﻿Ext.ns('suce.jerarquia');

Ext.define('model.jerarquia', {
    extend: 'Ext.data.Model',
    fields: [
        { name: 'formato', type: 'string' },
        { name: 'id_solicitud', type: 'int' },
        { name: 'id_version', type: 'int' },
        { name: 'flujo', type: 'int' },
        { name: 'orden', type: 'string' },
        { name: 'suce', type: 'string' },
        { name: 'actividad', type: 'string' },
        { name: 'nombactividad', type: 'string' }
    ]
});

suce.jerarquia.view = function (config) {
    return new Ext.Window(Ext.apply({

        title: 'Dependencias de SUCE',
        height: 400,
        width: 700,
        modal: true,
        layout: 'fit',

        initComponent: function () {
            var me = this;
            //console.log(me.idsolicitud, me.idversion);            
            var store = Ext.create('Ext.data.TreeStore', {
                model: 'model.jerarquia',
                data: [],
                proxy: {
                    extraParams: { C: 'JERARQUIA', S: 'CONSULTA', solicitud: me.idsolicitud, version: me.idversion },
                    type: 'ajax',
                    url: 'mant.ashx'
                    //type: 'memory',
                    //reader: { type: 'json' }
                }
            });

            me.treeJerarquia = new Ext.tree.Panel({
                title: 'Dependencias',
                width: 200,
                //height: 150,
                xtype: 'tree-grid',
                store: store,
                rootVisible: false,
                columns: [
                    { xtype: 'treecolumn', text: 'SUCE', dataIndex: 'suce', flex: 2 },
                    { text: 'formato', dataIndex: 'formato', flex: 1 },
                    { text: 'Nro Orden', dataIndex: 'orden', flex: 1 },
                    { text: 'Actividad', dataIndex: 'nombactividad', flex: 3 },
                ],
                listeners: {
                    scope: me,
                    itemdblclick: function (me, record, index, e, eOpts) {
                        if (record.get('formato') == 'DGS009') {
                            MyApp.createWindow('suce.solicitud_dgs009.edit', {
                                readOnly: true,
                                idsolicitud: record.get('id_solicitud'), fechregistro: "", numesolicitud: record.get('orden'), codformato: record.get('formato'), idversion: record.get('id_version'), docnumero: record.get('suce'), numeexpediente: ""
                                //listeners: { scope: b, 'update': b.reload }
                            }, 'solicitud/formato/dgs009_solicitud-edit.js');
                        }
                        else if (record.get('formato')=='DGS008'){
                            MyApp.createWindow('suce.solicitud_dgs008.edit', {
                                readOnly: true,
                                idsolicitud: record.get('id_solicitud'), fechregistro: "", numesolicitud: record.get('orden'), codformato: record.get('formato'), idversion: record.get('id_version'), docnumero: record.get('suce'), numeexpediente: ""
                                //listeners: { scope: b, 'update': b.reload }
                            }, 'solicitud/formato/dgs008_solicitud-edit.js');
                        }
                        else if (record.get('formato') == 'DGS005') {
                            MyApp.createWindow('suce.solicitud_dgs005.edit', {
                                readOnly: true,
                                idsolicitud: record.get('id_solicitud'), fechregistro: "", numesolicitud: record.get('orden'), codformato: record.get('formato'), idversion: record.get('id_version'), docnumero: record.get('suce'), numeexpediente: ""
                                //listeners: { scope: b, 'update': b.reload }
                            }, 'solicitud/formato/dgs005_solicitud-edit.js');
                        }
                        else if (record.get('formato') == 'DGS006') {
                            MyApp.createWindow('suce.solicitud_dgs006.edit', {
                                readOnly: true,
                                idsolicitud: record.get('id_solicitud'), fechregistro: "", numesolicitud: record.get('orden'), codformato: record.get('formato'), idversion: record.get('id_version'), docnumero: record.get('suce'), numeexpediente: ""
                                //listeners: { scope: b, 'update': b.reload }
                            }, 'solicitud/formato/dgs006_solicitud-edit.js');
                        }
                        else if (record.get('formato') == 'DGS007') {
                            MyApp.createWindow('suce.solicitud_dgs007.edit', {
                                readOnly: true,
                                idsolicitud: record.get('id_solicitud'), fechregistro: "", numesolicitud: record.get('orden'), codformato: record.get('formato'), idversion: record.get('id_version'), docnumero: record.get('suce'), numeexpediente: ""
                                //listeners: { scope: b, 'update': b.reload }
                            }, 'solicitud/formato/dgs007_solicitud-edit.js');
                        }
                        else if (record.get('formato') == 'DGS005-R') {
                            MyApp.createWindow('suce.solicitud_dgs005r.edit', {
                                readOnly: true,
                                idsolicitud: record.get('id_solicitud'), fechregistro: "", numesolicitud: record.get('orden'), codformato: record.get('formato'), idversion: record.get('id_version'), docnumero: record.get('suce'), numeexpediente: ""
                                //listeners: { scope: b, 'update': b.reload }
                            }, 'solicitud/formato/dgs005r_solicitud-edit.js');
                        }
                        else if (record.get('formato') == 'DGS006-R') {
                            MyApp.createWindow('suce.solicitud_dgs006r.edit', {
                                readOnly: true,
                                idsolicitud: record.get('id_solicitud'), fechregistro: "", numesolicitud: record.get('orden'), codformato: record.get('formato'), idversion: record.get('id_version'), docnumero: record.get('suce'), numeexpediente: ""
                                //listeners: { scope: b, 'update': b.reload }
                            }, 'solicitud/formato/dgs006r_solicitud-edit.js');
                        }
                        //console.log(me);
                        
                        this.cerrar();
                    }
                }
            });

            me.items = [me.treeJerarquia];
            Ext.Panel.prototype.initComponent.call(me);
        },
        cerrar: function () {
            var me = this;
            me.onEsc();
        }


        /*
        show: function (p) {
        var me = this;
        Ext.Window.prototype.show.call(me);
        //            callServer('mant.ashx', { C: 'JERARQUIA', S: 'CONSULTA', solicitud: p.idsolicitud, version: p.idversion }, function (v) {
        //                v = Ext.decode(v);
        //                me.treeJerarquia.store.loadData(v);
        //                console.log(v);
        //            }, me);
        console.log('sin errores??');
        }*/
    }, config));
};
/*
maximizable: true,
        defaults: {
            xtype: "panel",
            height: 60,
            collapsible: true
        },
        items: [{
            title: "Menu",
            html: "The main menu"
        }, {
            title: "Content",
            html: "The main content!"
        }]*/